// ==========================================================================
// GFast自动生成service操作代码。
// 生成日期：2024-04-24 10:28:10
// 生成路径: internal/app/business/service/seats.go
// 生成人：周志雄
// desc:座位
// company:云南奇讯科技有限公司
// ==========================================================================

package service

import (
	"context"
	"github.com/tiger1103/gfast/v3/api/v1/business"
	"github.com/tiger1103/gfast/v3/internal/app/business/model"
)

type ISeats interface {
	List(ctx context.Context, req *business.SeatsSearchReq) (res *business.SeatsSearchRes, err error)
	GetById(ctx context.Context, Id int) (res *model.SeatsInfoRes, err error)
	Add(ctx context.Context, req *business.SeatsAddReq) (err error)
	Edit(ctx context.Context, req *business.SeatsEditReq) (err error)
	Delete(ctx context.Context, Id []int) (err error)
	SeatsSetting(ctx context.Context, req *business.SeatsSettingReq) (res *business.SeatsSettingRes, err error)
	Refund(ctx context.Context, req *business.RefundReq) (res *business.RefundRes, err error)
	GetSeatsStaticInfo(ctx context.Context, id int) (res []model.SeatsStatusStatic, err error)
}

var localSeats ISeats

func Seats() ISeats {
	if localSeats == nil {
		panic("implement not found for interface ISeats, forgot register?")
	}
	return localSeats
}

func RegisterSeats(i ISeats) {
	localSeats = i
}
